package com.sky.controller.admin;


import com.sky.result.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.*;

@Slf4j
@Api(tags = "店铺营业状态")
@RestController
@RequiredArgsConstructor    //引入Redis储存中间站  存储结构是 key  value
public class ShopController {

    private final RedisTemplate redisTemplate;
    //定义  代码块 状态
    private final static String REDIS_STATUS_KEY = "SHOP_STATUS";

    @ApiOperation("设置状态")
    @PutMapping("/admin/shop/{status}")  //请求状态
    public Result setStatus(@PathVariable("status") Integer status) {
        //去Redis中设置 字符串key名字   设置    键       传入的状态（值）
        redisTemplate.opsForValue().set(REDIS_STATUS_KEY, status);
        return Result.success("设置成功");
    }

    @ApiOperation("获取营业状态")
    @GetMapping("/admin/shop/status")
    public Result getStatus() {       //从Redis 中获取 字符串key  获取里边的key     返回状态 转型 Integer类型
        Integer status = (Integer) redisTemplate.opsForValue().get(REDIS_STATUS_KEY);
        return Result.success(status);

    }

    @ApiOperation("用户端获营业状态")
    @GetMapping("/user/shop/status")
    public Result getShopStatus() {       //从Redis储存中间站 中获取 字符串key  获取里边的key     返回状态 转型 Integer类型
        Integer status = (Integer) redisTemplate.opsForValue().get(REDIS_STATUS_KEY);
        return Result.success(status);

    }

}
